Methods and apparatus to monitor media in a direct media network

ABSTRACT

Methods, apparatus, and articles of manufacture to monitor media are disclosed. An example apparatus includes at least one memory, machine-readable instructions, and at least one processor to execute the machine-readable instructions to at least establish a direct media network as a Group Owner after performance of a negotiation process with a streaming client device. The at least one processor is to add a client device to the direct media network based on a beacon response from the streaming client device and, after metadata is extracted from first media at the apparatus, cause transmission of the first media to a media presentation device via the direct media network, the metadata representative of an identification of the media, and cause transmission of a message including the identification of the media to a server via a network to credit the media as having been accessed based on the identification.

RELATED APPLICATIONS

This patent arises from a continuation of U.S. patent application Ser.No. 17/839,098, (now U.S. Pat. No. 11,563,666) which was filed on Jun.13, 2022, which arises from U.S. patent application Ser. No. 16/780,879,(now U.S. Pat. No. 11,362,924) which was filed on Feb. 3, 2020, whicharises from U.S. patent application Ser. No. 15/385,548, (now U.S. Pat.No. 10,554,530) which was filed on Dec. 20, 2016. U.S. patentapplication Ser. No. 16/780,879 and U.S. patent application Ser. No.15/385,548 are hereby incorporated herein by reference in theirentireties. Priority to U.S. patent application Ser. No. 16/780,879 andU.S. patent application Ser. No. 15/385,548 is hereby claimed.

FIELD OF THE DISCLOSURE

This disclosure relates generally to monitoring media, and, moreparticularly, to methods and apparatus to monitor media in a directmedia network.

BACKGROUND

In recent years, methods of accessing media have evolved. For example,in the past, Internet media was primarily accessed via computer systemssuch as desktop and laptop computers. Recently, handheld mobile devices(e.g., smartphones, tablets, etc.) have been introduced that allow usersto request and view Internet media. Such handheld mobile devices havebeen equipped with a capability to stream the Internet media onadditional streaming media devices (e.g., smartphones, tablets,televisions, etc.).

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of an example environment in which an examplestreaming monitor monitors streaming media.

FIG. 2 is a block diagram of an example implementation of the streamingmonitor of FIG. 1 .

FIG. 3 is a block diagram of an example implementation of the centralfacility of FIG. 1 .

FIG. 4 is a flowchart representative of example machine-readableinstructions that may be executed to implement the streaming monitor ofFIGS. 1 and/or 2 to operate as a Group Owner of a Wi-Fi Direct network.

FIG. 5 illustrates an example data flow diagram illustrating a formationof a Wi-Fi Direct network between the streaming monitor and the clientdevices of FIGS. 1 and/or 2 .

FIG. 6 is a flowchart representative of example machine-readableinstructions that may be executed to implement the streaming monitor ofFIGS. 1 and/or 2 to operate as a client device of a Wi-Fi directnetwork.

FIG. 7 is a flowchart representative of example machine-readableinstructions that may be executed to implement the central facility ofFIGS. 1 and/or 3 .

FIG. 8 is a block diagram of an example processing platform structuredto execute the example machine-readable instructions of FIGS. 4-6 toimplement the streaming monitor of FIGS. 1 and/or 2 .

FIG. 9 is a block diagram of an example processing platform structuredto execute the example machine-readable instructions of FIG. 7 toimplement the central facility of FIGS. 1 and/or 3 .

Wherever possible, the same reference numbers will be used throughoutthe drawing(s) and accompanying written description to refer to the sameor like parts.

DETAILED DESCRIPTION

In recent years, the use of media devices (e.g., an Apple TV®, an AppleiPad®, a Google Chromecast™, a Roku™ media player, a Slingbox™ mediaplayer, a Microsoft® Xbox®, a Sony PlayStation™, etc.) to presentstreaming media available via the Internet has increased. As used herein“media” refers to audio and/or visual (still or moving) content and/oradvertisements. As used herein, streaming and/or streaming media refersto media that is presented to a user by a media device at leastpartially in parallel with the media being transmitted (e.g., via anetwork) to the media device (or a device associated with the mediadevice) from a media provider.

As different types of media providers and media applications (e.g., aNetflix™ application, a Hulu™ application, a Pandora™ application, etc.)for such media devices have been created, the popularity of streamingmedia has increased. Indeed, some households have eliminated traditionalsources of media (e.g., satellite television, cable television) in favorof such streaming devices. In view of the increasing popularity ofaccessing media in this manner, understanding how users interact withthe streaming media (e.g., such as by understanding what media ispresented, how the media is presented, who is accessing such media,etc.) provides valuable information to service providers, advertisers,content providers, media providers, manufacturers, and/or otherentities.

In some examples, users view streaming media via a streaming device suchas, for example, a smartphone, a tablet, a personal computer, etc.Streaming media is transmitted from a media provider (e.g., a streamingmedia provider such as, for example, Netflix™, Hulu™, etc.) to thestreaming device via a network. In some examples, the media is displayedby the streaming device that receives the streaming media. However, insome examples, the streaming device uses remote presentation techniquesto present the media via a media presentation device such as, forexample, a television.

In some examples, the remote presentation is implemented by transmittingthe media to the media presentation device (e.g., the television) via,for example, a peer-to-peer (P2P) network. Wi-Fi Direct is an exampleP2P network used to share the media and/or stream the media from astreaming client device (e.g., a smartphone, a tablet, a personalcomputer, etc.) to a media presentation device (e.g., a television)without the use of a wireless access point. Wi-Fi Direct is an examplewireless technology standard enabling devices to connect to one anotherwithout the use of the wireless access point and a correspondingInternet connection. Users may utilize a Wi-Fi Direct connection todisplay media, share information, and/or sync data without joining atraditional home, office, or hotspot network. Such devices that mayutilize the Wi-Fi Direct technology include cameras, gaming devices,mobile phones, printers, personal computers, etc. Devices may use theWi-Fi Direct connection to make a one-to-one connection, or form a groupwhere multiple devices are connected to each other simultaneously.

Streaming media applications that include the use of one or more Wi-FiDirect connections may pose challenges to a monitoring system thatincludes using an installed metering device in a household. In someexamples, a user with a streaming client device (e.g., a smartphone, atablet, a personal computer, etc.) may stream media directly to a mediapresentation device (e.g., a television) and bypass an installedmetering device in the household. For example, the user in the householdmay stream the media directly from the streaming client device to themedia presentation device via a Wi-Fi Direct connection. Streaming themedia directly to the media presentation device may include the medianot passing through an intermediary device (e.g., a meter, a modem, arouter, etc.) or being subject to metering processing such as, forexample, extracting embedded codes, signatures, watermarks, etc. fromthe media. Bypassing the installed metering device may include themetering device not being able to monitor the media between thestreaming client device and the media presentation device. For example,the streaming client device and the media presentation device may be ina Wi-Fi Direct network. The metering device may not be connected to thesame Wi-Fi Direct network and, thus, may not be able to monitorinformation such as media identification (e.g., identification of media)information, media device information, etc. If the streaming clientdevice streams the media directly to the media presentation device inthe Wi-Fi Direct network, the media avoids being transmitted through theinstalled meter and/or processed by the installed meter. Bypassing theinstalled meter prevents the meter from performing functions such as,for example, extracting media identification information from the mediaand identifying the media based on the extracted media identificationinformation.

Example methods, apparatus, systems, and articles of manufacturedisclosed herein may be used to identify media information within theWi-Fi Direct network. In some examples, the media information relates tomedia streaming from a streaming client device to a media presentationdevice. In some instances, the media information relates to the mediatransmitted from the streaming client device to the media presentationdevice in a non-streaming application. For example, the mediainformation may relate to the media presented by the media presentationdevice, where the media was completely transmitted to the mediapresentation device prior to the media presentation device accessing themedia. For example, the media presentation device may present the mediaduring a time period in which the streaming client device is nottransmitting the media to the media presentation device.

The media information may include media identification information ofthe media. For example, the media identification information may includeinformation identifying a type of the media (e.g., the media is an audiofile, the media is a video file, etc.), identifying a source of themedia (e.g., an audio file from Spotify®, a video file from YouTube®,etc.). The media information may include quality information of themedia. For example, the quality information may include a resolution ofthe media (e.g., an audio file resolution, a video file resolution,etc.). The media information may include network performance informationrelated to a transmission of the media. For example, the mediainformation may include a bandwidth (e.g., a data rate) of a dataconnection between two devices where a first device is streaming themedia to a second device. The media information may also include taginformation such as, for example, geotag information associated withaccessing the media.

While the examples included herein refer to Wi-Fi Direct networks byexample, any type of direct media network (e.g., a network including apoint-to-point connection between two devices enabling a transfer ofmedia between the two devices, where the transfer is not transmittedthrough a third device) may be utilized. Any instance of Wi-Fi Directdescribed herein may be interpreted as direct media network.

Example methods, apparatus, systems, and articles of manufacturedisclosed herein may be used to identify media device information of amedia device (e.g., a media device operating as a Group Owner, a mediadevice operating as a client device, etc.) within the Wi-Fi Directnetwork. The media device information may include device identificationinformation (e.g., a device name, a device ID, etc.), devicemanufacturer information (e.g., Apple®, Google®, Samsung®, etc.), devicetype information (e.g., Apple® iPhone® 7, Google® Pixel, etc.), deviceoperating system information (e.g., Apple® iOS, Google® Android®, etc.),and/or a device media access control (MAC) address.

In some disclosed examples, a streaming monitor is a Group Owner of aWi-Fi Direct network. As used herein, the phrase “Group Owner” refers toa device that forms and monitors a group (e.g., a Wi-Fi Direct network),where the device operates as an access point in the group whereadditional devices may join the group as client devices. The Group Ownermay have responsibilities such as, for example, starting and stoppingthe Wi-Fi Direct network, configuring an operation mode of one or moredevices to function as a Group Client, monitoring the media information,the media device information, etc. In some examples, the Group Owner mayrelay and/or transmit media from a streaming client device to a mediapresentation device. The Group Owner may obtain the media informationsuch as, for example, quality information of the media (e.g., the mediais 720p video, the media is 1080p video, etc.), a source identificationof the media (e.g., the media is video content from Vimeo®, the media isvideo content from YouTube®, etc.) a type identification of the media(e.g., the media is an audio file, the media is a photo file, the mediais a video file, etc.), a bandwidth of the streaming media (e.g., abandwidth of data transfer), etc. The Group Owner may obtain the mediadevice information of the streaming client device such as, for example,the device type information (e.g., the device type is an Apple® iPhone®7) of the streaming client device, the MAC address of the streamingclient device, etc.

In some disclosed examples in which the streaming monitor is configuredto operate as the Group Owner of the Wi-Fi Direct network, the streamingmonitor periodically sends information to a central facility forprocessing. The streaming monitor may obtain information from one ormore client devices connected to the Wi-Fi Direct network. The streamingmonitor may process the obtained information and generate one or moremessages or messages. A message may be, for example, a data packet or acollection of data packets that include the media information and/or themedia device information. For example, the message may include the mediainformation regarding data flow within the Wi-Fi Direct network. Inanother example, the message may include a bandwidth of streaming media,a source identification of the streaming media (e.g., a YouTube® uniformresource locator, etc.), quality information of the streaming media(e.g., the streaming media is a 1080p video, etc.) or tag information ofthe streaming media (e.g., a geotag, etc.).

In some disclosed examples, the message includes the media deviceinformation regarding the media devices in the Wi-Fi Direct network. Forexample, the message may include the device identification information(e.g., the device name, the device ID, etc.), the device manufacturerinformation (e.g., Apple®, Google®, Samsung®, etc.), the device typeinformation (e.g., Apple® iPhone® 7, Google® Pixel, etc.), the deviceoperating system information (e.g., Apple® iOS, Google® Android®, etc.),and/or the device MAC address. In some instances, the message includesadministrative information such as, for example, a time stamp, a numberof devices connected to the network, etc. In some instances, themessage(s) are transmitted to the central facility over a cellular orwireless network (e.g., a wireless connection).

In some disclosed examples, the streaming monitor is configured tooperate as a client device of an existing Wi-Fi Direct network (e.g.,instead of or in addition to operating as a Group Owner). For example,the streaming monitor may be a client device of the Wi-Fi directnetwork, where a user's mobile device is a Group Owner of the Wi-Fidirect network. The streaming monitor configured as the client devicemay have responsibilities such as, for example, connecting anddisconnecting to the Wi-Fi Direct network via the Group Owner. Thestreaming monitor may also broadcast the media device informationregarding the devices connected to the Wi-Fi Direct network such as, forexample, the device identification information (e.g., the device name,the device ID, etc.), the device manufacturer information (e.g., Apple®,Google®, Samsung®, etc.), the device type information (e.g., Apple®iPhone®, Google® Pixel™, etc.), the device operating system information(e.g., Apple® iOS, Google® Android™, etc.), and/or the device MACaddress. The streaming monitor may obtain the media information from theGroup Owner such as a bandwidth (e.g., a bandwidth of data transfer) ofthe streaming media.

In some disclosed examples, the streaming monitor configured as theclient device of the Wi-Fi Direct network periodically sends informationto the central facility for processing. The streaming monitor may obtainthe information from the Group Owner and/or the client devices connectedto the Wi-Fi Direct network. The streaming monitor may process theobtained information and generate one or more messages. A message maybe, for example, a data packet or a collection of data packets thatinclude information regarding the Wi-Fi Direct network and/orinformation regarding one or more client devices connected to thenetwork. The message may include the media device information regardingthe media devices in the Wi-Fi Direct network. For example, the messagemay include the device identification information (e.g., the devicename, the device ID, etc.), the device manufacturer information (e.g.,Apple®, Google®, Samsung®, etc.), the device type information (e.g.,Apple® iPhone® 7, Google® Pixel, etc.), the device operating systeminformation (e.g., Apple® iOS, Google® Android®, etc.), and/or thedevice MAC address. In some examples, the message also includesadministrative information such as, for example, a time stamp, a numberof devices connected to the network, etc. In some instances, themessage(s) are transmitted to the central facility over a cellular orwireless network.

FIG. 1 is a block diagram of an example environment 100 constructed inaccordance with the teachings of this disclosure to identify media(e.g., streaming media) and/or media device information within a Wi-FiDirect network. The example environment 100 includes an examplestreaming monitor 105 operating in an example media exposure measurementlocation 110. The example media exposure measurement location 110includes example media devices 115,120,125,130,135,140 and an examplemodem 145. Further shown are an example network 150, an example centralfacility 155, an example network interface 160, an example wirelesscommunication system 165, an example wireless communication link 170, anenvironment 175, an environment 180, an example Wi-Fi Direct network185, and an example Wi-Fi Direct network 190.

In the illustrated example of FIG. 1 , the streaming monitor 105 isconfigured to operate in an environment 175 where it operates as theGroup Owner. In the illustrated example, the streaming monitor 105 isalso configured to operate in an environment 180 where it operates as aclient device. In the illustrated example, the streaming monitor 105includes at least two Wi-Fi radios, where a first Wi-Fi radio isdedicated to streaming monitor Group Owner functions and a second Wi-Firadio is dedicated to streaming monitor client device functions.

The media exposure measurement location 110 of the illustrated exampleof FIG. 1 is a panelist household. However, the example media exposuremeasurement location 110 may be any other location, such as, for examplean Internet café, an office, an airport, a library, a non-panelisthousehold, etc. While, in the illustrated example, a single mediaexposure measurement location 110 is shown, any number and/or type(s) ofmedia exposure measurement locations may be used.

The panelist household may include one or more panelists. The panelistsare users registered on panels maintained by a ratings entity (e.g., anaudience measurement company) that owns and/or operates the ratingsentity subsystem. Traditionally, audience measurement entities (alsoreferred to herein as “ratings entities”) determine demographic reachfor advertising and media programming based on registered panel members.That is, an audience measurement entity enrolls people that consent tobeing monitored into a panel. During enrollment, the audiencemeasurement entity receives demographic information from the enrollingpeople so that subsequent correlations may be made betweenadvertisement/media exposure to those panelists and differentdemographic markets.

People (e.g., households, organizations, etc.) register as panelistsvia, for example, a user interface presented on a media device (e.g.,via a website). People may be recruited as panelists in additional oralternative manners such as, for example, via a telephone interview, bycompleting an online survey, etc. Additionally or alternatively, peoplemay be contacted and/or enlisted to join a panel using any desiredmethodology (e.g., random selection, statistical selection, phonesolicitations, Internet advertisements, surveys, advertisements inshopping malls, product packaging, etc.).

In the illustrated example, the media exposure measurement location 110includes the media devices 115,120,125,130,135,140. The example mediadevices 115,120,125,135,140 are client devices of the example Wi-FiDirect networks 185,190. In some examples, the client devices alsofunction as streaming client devices, where the streaming client devicesstream media to media presentation devices. For example, the mediadevice 115 is a streaming client device that streams the media to themedia device 125. In some examples, the client devices also function asmedia presentation devices, where the media presentation devices presentthe media streamed from the streaming client devices. For example, themedia device 125 is a media presentation device that presents the mediastreamed from the media device 115.

In the illustrated example of FIG. 1 , there are two Wi-Fi Directnetworks 185,190 at the media exposure measurement location 110.However, there may be additional Wi-Fi Direct networks at the examplemedia exposure measurement location 110. In the example Wi-Fi Directnetwork 185, the example streaming monitor 105 is configured to operateas the Group Owner. The example streaming monitor 105 is responsible forforming, monitoring, and disabling the example Wi-Fi Direct network 185.Additionally or alternatively, there may be multiple streaming monitorsto monitor one or more Wi-Fi Direct networks. For example, the streamingmonitor 105 and a second streaming monitor may monitor the Wi-Fi Directnetwork 185. In another example, the streaming monitor 105 and a thirdstreaming monitor may monitor the Wi-Fi Direct networks 185,190. Duringthe formation process of the example Wi-Fi Direct network 185, theexample streaming monitor 105 engages in a negotiation process with afirst client device. For example, the streaming monitor 105 may engagein the negotiation process with the media device 115. The negotiationprocess may include a comparison of a value for a Group Owner intentattribute. For example, the Group Owner of the Wi-Fi Direct network 185may be decided based on a comparison of a value of a Group Owner intentattribute for the media device 115 to a value of a Group Owner intentattribute for the streaming monitor 105. The determination of the GroupOwner of the Wi-Fi Direct network 185 may be decided based on having agreater value for a value of a Group Owner intent attribute. Uponsuccessful completion of the negotiation process, the example streamingmonitor 105 is determined to be the Group Owner and the example mediadevice 115 is determined to be a client device of the example Wi-FiDirect network 185. For example, the streaming monitor 105 may have avalue of 10 for a Group Owner intent attribute in comparison to themedia device 115 having a value of 5 for a Group Owner intent attribute,where the greater value for the Group Owner intent attribute determineswhether a device is the Group Owner of the Wi-Fi Direct network 185.

In the illustrated example, the streaming monitor 105 is responsible formonitoring the Wi-Fi Direct network 185. The example streaming monitor105 may occasionally send one or more data packets to connected clientdevices to monitor the example Wi-Fi Direct network 185. For example,the streaming monitor 105 may send a heartbeat data packet every 100milliseconds to the media devices 115,120,125. The example media devices115,120,125 may receive the heartbeat data packet and send aconfirmation data packet confirming their continued connection to theexample Wi-Fi Direct network 185. In some instances, the streamingmonitor 105 may receive a cancellation data packet(s) from the mediadevices 115,120,125 alerting the streaming monitor 105 that one or moreof the media devices 115,120,125 have left the Wi-Fi Direct network 185.

In some examples, the streaming monitor 105 sends beacons within themedia exposure measurement location 110 to determine if additional mediadevices are available to connect to the Wi-Fi Direct network 185. Forexample, if the media device 120 belongs to a guest user visiting themedia exposure measurement location 110, the media device 120 mayreceive a beacon from the streaming monitor 105. The beacon may alertthe example media device 120 that the example Wi-Fi Direct network 185is available to join. In response to receiving the beacon, the guestuser may request the example streaming monitor 105 to join the exampleWi-Fi Direct network 185 via the example media device 120.

In the illustrated example of FIG. 1 , the streaming monitor 105monitors the Wi-Fi Direct network 185 by obtaining the mediainformation. In some examples, the streaming monitor 105 obtains themedia information regarding the media streamed to the streaming monitor105. For example, the streaming monitor 105 may obtain the mediaidentification information by inspecting media metadata, a uniformresource locator (URL) associated with the media, etc. In some examples,the streaming monitor 105 may obtain the media quality informationrelated to the media streaming from the media device 115 to thestreaming monitor 105. The media quality information may include aresolution of the media (e.g., an audio file resolution, a video fileresolution, etc.), etc. For example, the streaming monitor 105 maydetermine that the media is a 1080p video file. In some instances, thestreaming monitor 105 may obtain the network performance information.For example, the network performance information may include thebandwidth of the data being transmitted to the streaming monitor 105from the media device 115. The example streaming monitor 105 may alsoobtain tag information related to the media such as, for example, thegeotag of the media.

In the illustrated example, the streaming monitor 105 monitors the Wi-FiDirect network 185 by obtaining the media device information regardingthe media devices 115,120,125. The media device information may includethe device identification information (e.g., the device name, the deviceID, etc.), the device manufacturer information (e.g., Apple®, Google®,Samsung®, etc.), the device type information (e.g., Apple® iPhone® 7,Google® Pixel, etc.), the device operating system information (e.g.,Apple® iOS, Google® Android®, etc.), and/or the device MAC address. Forexample, the streaming monitor 105 may obtain device identificationinformation from the media device 115 that the media device 115 is anApple® iPhone® 7 running iOS 10.

In the illustrated example, the streaming monitor 105 is responsible fordisabling the Wi-Fi Direct network 185. The example streaming monitor105 disables the example Wi-Fi Direct network 185 by discontinuingconnections between the streaming monitor 105 and the example mediadevices 115,120,125. In some examples, the streaming monitor 105 maydisable the network by leaving the network. For example, the streamingmonitor 105 may leave the Wi-Fi Direct network 185. Without a GroupOwner to administer and monitor the network, the example Wi-Fi Directnetwork 185 effectively becomes disabled. In addition, since the examplemedia devices 115,120,125 are connected to the example streaming monitor105 individually without a connection to each other, the removal of thestreaming monitor 105 ends the peripheral connection the media devices115,120,125 had with each other via the streaming monitor 105.

In the illustrated example of FIG. 1 , the media device 115 is a clientdevice of the Wi-Fi Direct network 185. The example media device 115 isalso a streaming client device (e.g., a smartphone), which streams mediato the example streaming monitor 105. In the illustrated example, themedia device 115 streams the media to the media device 125 via thestreaming monitor 105. The example streaming monitor 105 receives themedia from the example media device 115 and relays the media to theexample media device 125. The example streaming monitor 105 may processthe media streamed from the example media device 115 to obtain the mediainformation prior to transmitting the media to the example media device125. In some examples, the streaming monitor 105 may store a componentof the media locally on the streaming monitor 105 for future processing.

In some examples, the media device 115 transmits the media to the mediadevice 125 via the streaming monitor 105 in response to executing a setof machine-readable instructions. In some instances, the set ofmachine-readable instructions executed by the media device 115 to streamthe media to the streaming monitor 105 instead of directly to the mediadevice 125 are obtained from the streaming monitor 105. For example, themedia device 115 may obtain the machine-readable instructions from thestreaming monitor 105 when the media device 115 connects to the Wi-FiDirect network 185. In another example, the media device 115 may obtainthe machine-readable instructions from the streaming monitor 105 whenthe media device 115 performs the negotiation process with the streamingmonitor 105.

In the illustrated example of FIG. 1 , the media device 120 is a clientdevice (e.g., a laptop, a personal computer, etc.) of the Wi-Fi Directnetwork 185. The example media device 120 transmits media deviceinformation such as, for example, the device identification information,the device manufacturer information, the device type information, thedevice operating system, the device MAC address, etc. to the examplestreaming monitor 105. For example, the media device 120 may transmit tothe streaming monitor 105 that the media device 120 is an Apple®MacBook® running macOS™ Sierra.

In some examples, the media device 120 may also be a streaming clientdevice. For example, the media device 120 may stream a first media tothe media device 125 via the streaming monitor 105 while the mediadevice 115 streams a second media to the media device 125 via thestreaming monitor 105. The example streaming monitor 105 may determineto stream the first media, the second media, and/or a combinationthereof to the example media device 125. In some instances, the mediadevice 120 streams the second media to the streaming monitor 105 inplace of the media device 115 streaming the first media to the streamingmonitor 105.

In the illustrated example of FIG. 1 , the media device 125 is a clientdevice of the Wi-Fi Direct network 185. The example media device 125 isalso a media presentation device (e.g., a television) that may presentthe media streamed from the example media devices 115,120. The examplemedia device 125 may be responsible for transmitting media deviceinformation such as, for example, the device identification information,the device manufacturer information, the device type information, thedevice operating system, the device MAC address, etc. to the examplestreaming monitor 105. For example, the media device 120 may transmit tothe streaming monitor 105 that the media device 120 is a Samsung® smarttelevision. In the illustrated example, the media device 125 presentsthe media streamed from the media device 115 via the streaming monitor105. In some examples, the media device 125 presents the media streamedfrom the media device 120 via the streaming monitor 105.

In the illustrated example of FIG. 1 , the media device 130 is a GroupOwner of the example Wi-Fi Direct network 190. The example media device130 is responsible for forming, monitoring, and disabling the exampleWi-Fi Direct network 190. The example media device 130 streams media tothe example media device 140. In some examples, the media device 130streams the media to the media device 135. The example media device 130obtains media device information regarding the example streaming monitor105 operating as the client device, and the example media devices135,140. For example, the media device 130 may obtain media deviceinformation from the media device 140 that the media device 140 is aSamsung® smart television. The example media device 130 may also obtainmedia information. For example, the media device 130 may obtain abandwidth of the connection between the media device 130 and the mediadevice 140.

In the Wi-Fi Direct network 190 of FIG. 1 , the streaming monitor 105 isconfigured to operate as a client device. The example streaming monitor105 operating as the client device is responsible for transmitting mediadevice information such as, for example, the device identificationinformation, the device manufacturer information, the device typeinformation, the device operating system, the device MAC address, etc.to the example media device 130. In some examples, the streaming monitor105 operating as the client device is configured to obtain the mediadevice information regarding a plurality of devices in the Wi-Fi Directnetwork 190. For example, the streaming monitor 105 may obtain the mediadevice information of the media devices 130,135,140 from the mediadevice 130. In some instances, the streaming monitor 105 operating asthe client device is configured to obtain the media information from theGroup Owner of the Wi-Fi Direct network 190. For example, the streamingmonitor 105 may obtain the bandwidth of the connection between the mediadevice 130 and the media device 140 from the media device 130.

In the illustrated example of FIG. 1 , the media device 135 is a clientdevice (e.g., a laptop, a personal computer, etc.) of the Wi-Fi Directnetwork 190. The example media device 135 may be responsible fortransmitting device identification information such as, for example, thedevice identification information, the device manufacturer information,the device type information, the device operating system, the device MACaddress, etc. to the Group Owner of the example Wi-Fi Direct network190. For example, the media device 135 may transmit to the media device130 that the media device 135 is an Apple® MacBook® running macOS™Sierra. In some examples, the media device 135 streams a first media tothe media device 140 instead of the media device 130 streaming a secondmedia to the media device 140.

In the illustrated example of FIG. 1 , the media device 140 is a clientdevice of the Wi-Fi Direct network 190. The example media device 140 isalso a media presentation device (e.g., a television) that is capable ofpresenting the media streamed from the example media devices 130,135.The example media device 140 may be responsible for transmitting mediadevice information such as, for example, the device identificationinformation, the device manufacturer information, the device typeinformation, the device operating system, the device MAC address, etc.to the Group Owner of the example Wi-Fi Direct network 190. For example,the media device 140 may transmit to the media device 130 that the mediadevice 140 is a Samsung® smart television.

In the illustrated example of FIG. 1 , the streaming monitor 105 isconfigured to process the obtained media information and/or the mediadevice information and generate one or more messages. A message may be,for example, a data packet or a collection of data packets that includethe obtained media information and/or the obtained media deviceinformation. For example, the message may include the media informationregarding the data flow within the Wi-Fi Direct network 185 and theWi-Fi Direct network 190. For example, the message may include abandwidth of streaming media, a source identification of the streamingmedia (e.g., a YouTube® uniform resource locator, etc.), the qualityinformation of the streaming media (e.g., the streaming media is a 1080pvideo, etc.), the tag information of the streaming media (e.g., thegeotag, etc.).

In the illustrated example of FIG. 1 , the streaming monitor 105transmits the message(s) generated from the obtained information to thecentral facility 155 via the network 150. The example streaming monitor105 may generate the message(s) from the obtained information, where theobtained information is from the example Wi-Fi Direct network 185, theexample Wi-Fi Direct network 190, and/or a combination thereof. In someexamples, the streaming monitor 105 transmits the message(s) as they aregenerated. In some instances, the streaming monitor 105 transmits themessage(s) after a time period. For example, the streaming monitor 105may transmit the message(s) every 100 milliseconds, every hour, everyday, etc. The example streaming monitor 105 may generate a log of themessage(s) and transmit the log to the central facility 155 in lieu ofthe message(s) themselves.

In some examples, the streaming monitor 105 processes the obtained mediainformation and/or the media device information prior to transmittingthe message(s) to the central facility 155. For example, the streamingmonitor 105 may associate the obtained media information with theobtained media device information. The example streaming monitor 105 maycredit the example media devices 115,120,125,130,135,140 as havingstreamed and/or presented the media. For example, the streaming monitor105 may credit the media device 115 as having streamed the media. Insome examples, the streaming monitor 105 credits media identificationinformation to the media devices 115,120,125,130,135,140. For example,the streaming monitor 105 may credit the media device 115 with streaminga YouTube® video. The example streaming monitor 105 may also credit theexample media device 125 with presenting the YouTube® video.

In some instances, the streaming monitor 105 performs an analysis on theprocessed information based on the obtained information. The examplestreaming monitor 105 may determine media device usage statistics basedon the obtained information from the example media devices115,120,125,130,135,140. For example, the streaming monitor 105 maydetermine that the media device 115 has streamed the most media at themedia exposure measurement location 110, that the media device 125 haspresented the most media at the media exposure measurement location 110,etc. The example streaming monitor 105 may also determine media deviceusage statistics based on the media device information. For example, thestreaming monitor 105 may determine that Apple® products were used morethan Google® products to stream and/or present the media.

The modem 145 of the illustrated example of FIG. 1 is an electroniccommunications device that enables network communications of the mediaexposure measurement location 110 to reach the network 150.Alternatively, the example modem 145 may enable point-to-pointcommunications with the example central facility 155. In some examples,the modem 145 is a digital subscriber line (DSL) modem, while in someother examples the modem 145 is a cable modem. In some examples, themodem 145 is a media converter that converts one communications medium(e.g., electrical communications, optical communications, wirelesscommunications, etc.) into another type of communications medium.

In the illustrated example of FIG. 1 , the streaming monitor 105 sendsobtained and processed media information and/or media device informationto the central facility 155 for analysis via the network 150. Thenetwork 150 of the illustrated example of FIG. 1 is the Internet.However, the example network 150 may be implemented using any suitablewired and/or wireless network(s) including, for example, one or moredata buses, one or more Local Area Networks (LANs), one or more wirelessLANs, one or more cellular networks, one or more private networks, oneor more public networks, etc. The example network 150 enables theexample streaming monitor 105 to be in communication with the examplecentral facility 155. As used herein, the phrase “in communication,”including variances therefore, encompasses direct communication and/orindirect communication through one or more intermediary components anddoes not require direct physical (e.g., wired) communication and/orconstant communication, but rather includes selective communication atperiodic or aperiodic intervals, as well as one-time messages.

The central facility 155 of the illustrated example is a server thatobtains and processes media monitoring information from the streamingmonitor 105 to generate exposure metrics related to presented media. Theexample central facility 155 analyzes the media monitoring informationto identify, for example, which media presentation devices are the mostowned, the most-frequently used, the least-frequently owned, theleast-frequently used, the most/least-frequently used for particulartype(s) and/or genre(s) of media, and/or any other media statistics oraggregate information that may be determined from the data. The mediapresentation device information may also be correlated or processed withfactors such as geodemographic data (e.g., a geographic location of themedia exposure measurement location, age(s) of the panelist(s)associated with the media exposure measurement location, an income levelof a panelist, etc.). Media presentation device information may beuseful to manufacturers and/or advertisers to determine which featuresshould be improved, determine which features are popular among users,identify geodemographic trends with respect to media presentationdevices, identify market opportunities, and/or otherwise evaluate theirown and/or their competitors' products.

In the illustrated example, the central facility 155 includes thenetwork interface 160 to receive Internet messages (e.g., a HyperTextTransfer Protocol (HTTP) request(s)) that include the meteringinformation. Additionally or alternatively, any other method(s) toreceive metering information may be used such as, for example, an HTTPSecure protocol (HTTPS), a file transfer protocol (FTP), a secure filetransfer protocol (SFTP), etc.

In some examples, the streaming monitor 105 is unable to transmitinformation to the central facility 155 via the modem 145. For example,a server upstream of the modem 145 may not provide functional routingcapabilities to the central facility 155. In the illustrated example,the streaming monitor 105 includes additional capabilities tocommunicate to the central facility 155. As shown in FIG. 1 , thestreaming monitor 105 includes the capabilities to send informationthrough the wireless communication system 165 (e.g., the cellularcommunication system) via the wireless communication link 170.

The wireless communication link 170 of the illustrated example is acellular communication link. However, any other method and/or system ofcommunication may additionally or alternatively be used such as, forexample, an Ethernet connection, a Bluetooth connection, a Wi-Ficonnection, etc. Further, the wireless communication link 170 of FIG. 1implements a cellular connection via a Global System for MobileCommunications (GSM). However, any other systems and/or protocols forcommunications may be used such as, for example, Time Division MultipleAccess (TDMA), Code Division Multiple Access (CDMA), WorldwideInteroperability for Microwave Access (WiMAX), Long Term Evolution(LTE), etc.

FIG. 2 is a block diagram of an example implementation of the examplestreaming monitor 105 of FIG. 1 . The example streaming monitor 105 ofFIG. 2 includes an example Group Owner mode communicator 200, an exampleclient device mode communicator 210, an example peer-to-peer (P2P)administrator 220, an example media presenter 230, an exampleinformation processor 240, an example message generator 250, an exampledata store 260, and an example network communicator 270.

In the illustrated example of FIG. 2 , the streaming monitor 105includes the Group Owner mode communicator 200 to communicate with oneor more client devices connected to the streaming monitor 105 in a Wi-FiDirect network, where the streaming monitor 105 operates as a GroupOwner. In the illustrated example, the Group Owner mode communicator 200obtains and/or transmits information to the one or more client devicesof the Wi-Fi Direct network. In some examples, the Group Owner modecommunicator 200 obtains media device information. For example, theGroup Owner mode communicator 200 may obtain device identificationinformation, device manufacturer information, device type information,device operating system information, a device media access control (MAC)address, etc. of the one or more client devices of the Wi-Fi Directnetwork.

In some instances, the Group Owner mode communicator 200 obtains mediainformation. For example, the Group Owner mode communicator 200 mayobtain information corresponding to media received from one or moreclient devices. For example, the Group Owner mode communicator 200 mayobtain quality information of the media, source identification of themedia, a type identification of the media, and a bandwidth of thestreaming media.

In some examples, the Group Owner mode communicator 200 transmitsinformation to the one or more client devices connected to the streamingmonitor 105 in the Wi-Fi Direct network. In some examples, the GroupOwner mode communicator 200 transmits media device information. In someinstances, the Group Owner mode communicator 200 transmits media. Forexample, the Group Owner mode communicator 200 may transmit the mediareceived from a first client device to a second client device. In someexamples, the Group Owner mode communicator 200 transmits P2Padministrator information (e.g., a Wi-Fi Direct data packet). Forexample, the Group Owner mode communicator 200 may transmit a GroupOwner negotiation packet, a Group Owner negotiation response packet, aGroup Owner confirmation packet, etc. In another example, the GroupOwner mode communicator 200 may transmit a beacon to the one or moreclient devices that may not already be connected to the Wi-Fi Directnetwork.

In the illustrated example of FIG. 2 , the streaming monitor 105includes the client device mode communicator 210 to communicate with aGroup Owner of a Wi-Fi Direct network where the streaming monitor 105operates as a client device. In the illustrated example, the clientdevice mode communicator 210 obtains and/or transmits information to theGroup Owner of the Wi-Fi Direct network. In some examples, the clientdevice mode communicator 210 obtains media device informationcorresponding to the Group Owner and/or the one or more client devicesconnected to the Group Owner of the Wi-Fi Direct network. For example,the client device mode communicator 210 may obtain device identificationinformation, device manufacturer information, device type information,device operating system information, a device media access control (MAC)address, etc. of the Group Owner and/or the one or more client devicesconnected to the Group Owner of the Wi-Fi Direct network. In someinstances, the client device mode communicator 210 transmits informationto the Group Owner of the Wi-Fi Direct network. For example, the clientdevice mode communicator 210 may transmit media device information tothe Group Owner of the Wi-Fi Direct network.

In some examples, the client device mode communicator 210 transmits P2Padministrator information (e.g., a Wi-Fi Direct data packet). Forexample, the client device mode communicator 210 may transmit a GroupOwner negotiation packet, a Group Owner negotiation response packet, aGroup Owner confirmation packet, etc. In another example, the GroupOwner mode communicator 200 may transmit a beacon response to a GroupOwner of a Wi-Fi Direct network.

In the illustrated example of FIG. 2 , the streaming monitor 105includes the P2P administrator 220 to administer and/or operate a Wi-FiDirect network. In some examples, the P2P administrator 220 administersthe Wi-Fi Direct network by forming or disbanding the Wi-Fi Directnetwork, configuring an operation mode of one or more devices to operateas a client device, adding additional client devices to the Wi-Fi Directnetwork etc. For example, the P2P administrator 220 may form the Wi-FiDirect network where the streaming monitor 105 operates as the GroupOwner. In another example, the P2P administrator 220 may join the Wi-FiDirect network where the streaming monitor 105 operates as the clientdevice. In some instances, the P2P administrator 220 operates the Wi-FiDirect network by instructing the Group Owner mode communicator 200 toobtain and/or transmit media device information, media information, etc.In some examples, the P2P administrator 220 operates the Wi-Fi Directnetwork by instructing the client device mode communicator 210 to obtainand/or transmit media device information.

In the illustrated example of FIG. 2 , the streaming monitor 105includes the media presenter 230 to present media to a mediapresentation device. In some examples, the media presenter 230 presentsthe media to the media presentation device via a wireless connection. Insome instances, the media presenter 230 presents the media received froma first client device to a second client device. For example, the mediapresenter 230 may obtain the media from the media device 115 of FIG. 1and present the media to the media device 125 of FIG. 1 . In someinstances, the media presenter 230 receives media from more than oneclient device. For example, the media presenter 230 may receive a firstmedia from the media device 115 and a second media from the media device120. The media presenter 230 may determine which media to present. Forexample, the media presenter 230 may determine to present the secondmedia to the media device 125. The media presenter 230 may determinewhich media to present based on a priority list stored in the streamingmonitor 105, where the priority list is modifiable by a user (e.g., apanelist). For example, the user may modify a priority list for theWi-Fi Direct network 185, where the user modifies the priority list toreflect that the media device 115 has priority over media device 120. Insome instances, the media presenter 230 determines the media to presentbased on an order of received media. For example, the media presenter230 may determine to stream the first media to the media device 125because the media presenter 230 received the first media prior to thesecond media. The media presenter 230 may stream the second media whenthe streaming of the first media has been completed.

In the illustrated example of FIG. 2 , the streaming monitor 105includes the information processor 240 to process information obtainedby the streaming monitor 105. In some examples, the informationprocessor 240 extracts media device information from the obtainedinformation. For example, the information processor 240 may extractdevice identification information, device manufacturer information,device type information, device operating system information, a devicemedia access control (MAC) address, etc. from the obtained information.In some examples, the information processor 240 processes obtainedmedia. The information processor 240 may process the obtained media byinspecting media metadata, inspecting a uniform resource locator (URL)associated with the media, etc. For example, the information processor240 may extract media information such as quality information of themedia, source identification of the media, a type identification of themedia, and a bandwidth of the streaming media (e.g., a bandwidth of datatransfer).

In the illustrated example of FIG. 2 , the streaming monitor 105includes the message generator 250 to generate a message based oninformation obtained by the streaming monitor 105. In some examples, themessage generator 250 generates a message that includes a timestamp(e.g., a time at which a message is generated), media deviceinformation, media information, etc. The message generator 250 maygenerate the message periodically and/or a-periodically. For example,the message generator 250 may generate the message at a periodicinterval (e.g., every 100 milliseconds). In another example, the messagegenerator 250 may generate the message upon receipt of information. Forexample, the message generator 250 may generate the message when thestreaming monitor 105 obtains media device information, mediainformation, etc.

In the illustrated example of FIG. 2 , the streaming monitor 105includes the data store 260 to record data (e.g., obtained information,generated messages, etc.). The data store 260 may be implemented by avolatile memory (e.g., a Synchronous Dynamic Random Access Memory(SDRAM), Dynamic Random Access Memory (DRAM), RAIVIBUS Dynamic RandomAccess Memory (RDRAM), etc.) and/or a non-volatile memory (e.g., flashmemory). The data store 260 may additionally or alternatively beimplemented by one or more double data rate (DDR) memories, such as DDR,DDR2, DDR3, mobile DDR (mDDR), etc. The data store 260 may additionallyor alternatively be implemented by one or more mass storage devices suchas hard disk drive(s), compact disk drive(s) digital versatile diskdrive(s), etc. While in the illustrated example the data store 260 isillustrated as a single database, the data store 260 may be implementedby any number and/or type(s) of databases. Furthermore, the data storedin the data store 660 may be in any data format such as, for example,binary data, comma delimited data, tab delimited data, structured querylanguage (SQL) structures, etc.

In the illustrated example of FIG. 2 , the streaming monitor 105includes the network communicator 270 to transmit network communicationsdata (e.g., generated messages) stored in the data store 260. Thenetwork communicator 270 of the illustrated example periodically and/ora-periodically transmits data from the data store 260 to the centralfacility 155 of FIG. 1 . The network communicator 270 may transmit thedata upon determining that the amount of data stored in the data store260 has reached a threshold, and/or in response to a timer reaching athreshold (e.g., a time limit specifying that network communications aretransmitted once every day). However, the transmission may occur at anydesired interval(s) such as, for example, transmitting once every hour,once every week, etc. In examples in which the transmission is triggeredbased on an amount of data stored in the data store 260, thetransmission threshold might indicate that data should be transmitted ifthere is more than a predetermined amount (e.g., one megabyte) of datastored in the data store 260. Any data storage amount may be used forsuch a trigger such as, for example, ten megabytes, one hundredmegabytes, etc. Additionally or alternatively, multiple transmissionthresholds may be present. For example, a threshold indicating that datashould be transmitted at least once a day and a threshold indicatingthat network communications data should be transmitted if more than onemegabyte of network communications data is stored in the data store 260might be used.

In the illustrated example, the network communicator 270 transmits thedata via the network 150 of FIG. 1 . However, the network communicator270 may transmit data via any other communication medium. For example,the streaming monitor 105 may be physically mailed to the centralfacility 155 and the network communicator 270 might transmit data via,for example, a USB connection, a Bluetooth connection, a serialconnection, a local area network (LAN), etc.

While an example manner of implementing the example streaming monitor105 of FIG. 1 is illustrated in FIG. 2 , one or more of the elements,processes and/or devices illustrated in FIG. 2 may be combined, divided,re-arranged, omitted, eliminated and/or implemented in any other way.Further, the example Group Owner mode communicator 200, the exampleclient device mode communicator 210, the example P2P administrator 220,the example media presenter 230, the example information extractor 240,the example message generator 250, the example data store 260, theexample network communicator 270 and/or, more generally, the examplestreaming monitor 105 of FIGS. 1 and/or 2 may be implemented byhardware, software, firmware and/or any combination of hardware,software and/or firmware. Thus, for example, any of the example GroupOwner mode communicator 200, the example client device mode communicator210, the example P2P administrator 220, the example media presenter 230,the example information extractor 240, the example message generator250, the example data store 260, the example network communicator 270and/or, more generally, the example streaming monitor 105 of FIGS. 1and/or 2 could be implemented by one or more analog or digitalcircuit(s), logic circuits, programmable processor(s), applicationspecific integrated circuit(s) (ASIC(s)), programmable logic device(s)(PLD(s)) and/or field programmable logic device(s) (FPLD(s)). Whenreading any of the apparatus or system claims of this patent to cover apurely software and/or firmware implementation, at least one of theexample Group Owner mode communicator 200, the example client devicemode communicator 210, the example P2P administrator 220, the examplemedia presenter 230, the example information extractor 240, the examplemessage generator 250, the example data store 260, and/or the examplenetwork communicator 270 is/are hereby expressly defined to include atangible computer readable storage device or storage disk such as amemory, a digital versatile disk (DVD), a compact disk (CD), a Blu-raydisk, etc. storing the software and/or firmware. Further still, theexample streaming monitor 105 of FIGS. 1 and/or 2 may include one ormore elements, processes and/or devices in addition to, or instead of,those illustrated in FIG. 2 , and/or may include more than one of any orall of the illustrated elements, processes and devices.

FIG. 3 is a block diagram of an example implementation of the examplecentral facility 155 of FIG. 1 . The example central facility 155 of theillustrated example of FIG. 3 includes the example network interface160, an example message extractor 310, an example media deviceidentifier 320, an example media identifier 330, an example mediacreditor 340, an example media monitoring database 350, and an examplereporter 360.

In the illustrated example of FIG. 3 , the central facility 155 includesthe network interface 160 to obtain information from and/or transmitinformation to the network 150 of FIG. 1 . In the illustrated example,the example network interface 160 implements a web server that receivesmonitoring information from the example streaming monitor 105. In theillustrated example, the monitoring information is formatted as an HTTPmessage. However, any other message format and/or protocol mayadditionally or alternatively be used such as, for example, a filetransfer protocol (FTP), a simple message transfer protocol (SMTP), anHTTP secure (HTTPS) protocol, etc.

In the illustrated example of FIG. 3 , the central facility 155 includesthe message extractor 310 to extract message information from theobtained network communication. In some examples, the message extractor310 extracts media device information, media information, etc. from themessage information. The message extractor 310 may extract individualmessages from the message information. The message extractor 310 mayalso organize the extracted information into categories. For example,the message extractor 310 may assign device type information to a devicetype category. In another example, the message extractor 310 may assignthe source identification of the media in a media source category.

In the illustrated example of FIG. 3 , the central facility 155 includesthe media device identifier 320 to identify a media device based onextracted message information. In some examples, the media deviceidentifier 320 identifies the media device based on the media deviceinformation. For example, the media device identifier 320 may inspectthe device identification information, the device manufacturerinformation, the device type information, the device operating systeminformation, the device MAC address information, etc. However, any othertechnique for identifying the media device may additionally oralternatively be used.

In the illustrated example of FIG. 3 , the central facility 155 includesthe media identifier 330 to identify media from extracted messageinformation. In some examples, the media identifier 330 identifies themedia from the extracted message information based on the mediainformation. For example, the media identifier 330 may inspect theextracted media information for media metadata, a uniform resourcelocator (URL) associated with the media, etc. However, any othertechnique for identifying the media may additionally or alternatively beused.

In the illustrated example of FIG. 3 , the central facility 155 includesthe media creditor 340 to credit media based on the obtainedinformation. In some examples, the media creditor 340 credits the mediabased on the media device information. For example, the media creditor340 may credit the media with device identification information (e.g., adevice name, a device ID, etc.), device manufacturer information (e.g.,Apple®, Google®, Samsung®, etc.), device type information (e.g., Apple®iPhone® 7, Google® Pixel, etc.), device operating system information(e.g., Apple® iOS, Google® Android®, etc.), and/or a device media accesscontrol (MAC) address. In some instances, the media creditor 340 creditsthe media with information corresponding to a streaming device and amedia presentation device. For example, the media creditor 340 maycredit the media with an iPhone streaming the media to a Samsungtelevision.

In the illustrated example of FIG. 3 , the central facility 155 includesthe media monitoring database 350 to record data (e.g., mediaidentification information, media crediting information, etc.). In theillustrated example, the example media monitoring database 350 storesmedia identification information (e.g., media metadata, a uniformresource locator, etc.) used to identify media. In some examples, themedia monitoring database 350 additionally stores user identifyinginformation and/or demographics such that received device identificationinformation and/or media information can be translated into demographicinformation. The media monitoring database 350 may be implemented by avolatile memory (e.g., a Synchronous Dynamic Random Access Memory(SDRAM), Dynamic Random Access Memory (DRAM), RAIVIBUS Dynamic RandomAccess Memory (RDRAM), etc.) and/or a non-volatile memory (e.g., flashmemory). The media monitoring database 350 may additionally oralternatively be implemented by one or more double data rate (DDR)memories, such as DDR, DDR2, DDR3, mobile DDR (mDDR), etc. The mediamonitoring database 350 may additionally or alternatively be implementedby one or more mass storage devices such as hard disk drive(s), compactdisk drive(s) digital versatile disk drive(s), etc. While in theillustrated example media monitoring database 350 is illustrated as asingle database, the media monitoring database 350 may be implemented byany number and/or type(s) of databases. Furthermore, the data stored inthe media monitoring database 350 may be in any data format such as, forexample, binary data, comma delimited data, tab delimited data,structured query language (SQL) structures, etc.

In the illustrated example of FIG. 3 , the central facility 155 includesthe media monitoring database 350 for storing data such as, for example,flash memory, magnetic media, optical media, etc. Furthermore, the datastored in the media monitoring database 730 may be in any data formatsuch as, for example, binary data, comma delimited data, tab delimiteddata, structured query language (SQL) structures, etc. In theillustrated example, the example media monitoring database 730 storesmetadata (e.g., codes, signatures, etc.) used to identify media. In someexamples, the media monitoring database 730 additionally stores useridentifying information and/or demographics such that received useridentifiers can be translated into demographic information.

In the illustrated example of FIG. 3 , the central facility 155 includesthe reporter 360 to generate and/or prepare reports. The reporter 360prepares media measurement reports indicative of the exposure of mediaon media devices. In some examples, the reporter 360 generates a reportidentifying demographics associated with the media via the receivedmonitoring information. For example, a panelist at the media exposuremeasurement location 110 may have provided the panelist's demographicsto the audience measurement entity. The reporter 360 may prepare areport associating the obtained panelist demographics with the exposedmedia. In some instances, the reporter 360 generates a reportidentifying demographics associated with the media devices via thereceived monitoring information. For example, the reporter 360 mayprepare a report associating the obtained panelist demographics with themedia device information. For example, the reporter 360 may associatethe demographics of a panelist with a media device (e.g., an Apple®iPhone®) of the panelist.

While an example manner of implementing the example central facility 155of FIG. 1 is illustrated in FIG. 3 , one or more of the elements,processes and/or devices illustrated in FIG. 3 may be combined, divided,re-arranged, omitted, eliminated, and/or implemented in any other way.Further, the example network interface 160, the example messageextractor 310, the example media device identifier 320, the examplemedia identifier 330, the example media creditor 340, the example mediamonitoring database 350, the example reporter 360, and/or moregenerally, the example central facility 155 of FIGS. 1 and/or 3 may beimplemented by hardware, software, firmware and/or any combination ofhardware, software and/or firmware. Thus, for example, any of theexample network interface 160, the example message extractor 310, theexample media device identifier 320, the example media identifier 330,the example media creditor 340, the example media monitoring database350, the example reporter 360, and/or more generally, the examplecentral facility 155 of FIGS. 1 and/or 3 could be implemented by one ormore analog or digital circuit(s), logic circuits, programmableprocessor(s), application specific integrated circuit(s) (ASIC(s)),programmable logic device(s) (PLD(s)) and/or field programmable logicdevice(s) (FPLD(s)). When reading any of the apparatus or system claimsof this patent to cover a purely software and/or firmwareimplementation, at least one of the example network interface 160, theexample message extractor 310, the example media device identifier 320,the example media identifier 330, the example media creditor 340, theexample media monitoring database 350, and/or the example reporter 360is/are hereby expressly defined to include a tangible computer readablestorage device or storage disk such as a memory, a digital versatiledisk (DVD), a compact disk (CD), a Blu-ray disk, etc. storing thesoftware and/or firmware. Further still, the example central facility155 of FIGS. 1 and/or 3 may include one or more elements, processesand/or devices in addition to, or instead of, those illustrated in FIG.3 , and/or may include more than one of any or all of the illustratedelements, processes, and devices.

Flowcharts and data diagrams representative of example machine readableinstructions for implementing the example streaming monitor 105 of FIGS.1 and/or 2 are shown in FIGS. 4-6 . In these examples, themachine-readable instructions comprise a program for execution by aprocessor such as the processor 812 shown in the example processorplatform 800 discussed below in connection with FIG. 8 . The program maybe embodied in software stored on a tangible computer readable storagemedium such as a CD-ROM, a floppy disk, a hard drive, a digitalversatile disk (DVD), a Blu-ray disk, or a memory associated with theprocessor 812, but the entire program and/or parts thereof couldalternatively be executed by a device other than the processor 812and/or embodied in firmware or dedicated hardware. Further, although theexample program is described with reference to the flowcharts and/ordata diagram illustrated in FIGS. 4-6 , many other methods ofimplementing the example streaming monitor 105 may alternatively beused. For example, the order of execution of the blocks may be changed,and/or some of the blocks described may be changed, eliminated, orcombined.

As mentioned above, the example processes of FIGS. 4-6 may beimplemented using coded instructions (e.g., computer and/or machinereadable instructions) stored on a tangible computer readable storagemedium such as a hard disk drive, a flash memory, a read-only memory(ROM), a compact disk (CD), a digital versatile disk (DVD), a cache, arandom-access memory (RAM) and/or any other storage device or storagedisk in which information is stored for any duration (e.g., for extendedtime periods, permanently, for brief instances, for temporarilybuffering, and/or for caching of the information). As used herein, theterm tangible computer readable storage medium is expressly defined toinclude any type of computer readable storage device and/or storage diskand to exclude propagating signals and to exclude transmission media. Asused herein, “tangible computer readable storage medium” and “tangiblemachine readable storage medium” are used interchangeably. Additionallyor alternatively, the example processes of FIGS. 4-6 may be implementedusing coded instructions (e.g., computer and/or machine readableinstructions) stored on a non-transitory computer and/or machinereadable medium such as a hard disk drive, a flash memory, a read-onlymemory, a compact disk, a digital versatile disk, a cache, arandom-access memory and/or any other storage device or storage disk inwhich information is stored for any duration (e.g., for extended timeperiods, permanently, for brief instances, for temporarily buffering,and/or for caching of the information). As used herein, the termnon-transitory computer readable medium is expressly defined to includeany type of computer readable storage device and/or storage disk and toexclude propagating signals and to exclude transmission media. As usedherein, when the phrase “at least” is used as the transition term in apreamble of a claim, it is open-ended in the same manner as the term“comprising” is open ended. Comprising and all other variants of“comprise” are expressly defined to be open-ended terms. Including andall other variants of “include” are also defined to be open-ended terms.In contrast, the term consisting and/or other forms of consist aredefined to be close-ended terms.

FIG. 4 is a flowchart representative of example machine-readableinstructions which may be executed to implement the streaming monitor105 of FIGS. 1 and/or 2 to operate as a Group Owner of a Wi-Fi Directnetwork. The example program 400 of FIG. 4 begins at block 402 when astreaming monitor 105 forms a Wi-Fi Direct network as a Group Owner. Forexample, the P2P administrator 220 may cause the streaming monitor 105to form a Wi-Fi Direct network with the media device 115 of FIG. 1 ,where the streaming monitor 105 operates as a Group Owner. At block 404,the streaming monitor 105 obtains and processes media deviceinformation. For example, the Group Owner mode communicator 200 mayobtain the media device identification from a media device. Theinformation processor 240 may process the media device identificationfrom the media device. At block 406, the streaming monitor 105 connectsto additional client devices. For example, the P2P administrator 220 mayconnect to the media devices 120,125 of FIG. 1 . At block 408, thestreaming monitor 105 obtains and processes media device information.For example, the Group Owner mode communicator 200 may obtain the mediadevice identification information from the media devices 120,125. Theinformation processor 240 may process the media device identificationfrom the media devices 120,125.

At block 410, the streaming monitor 105 receives media from a streamingclient device. For example, the Group Owner mode communicator 200 mayobtain media from the media device 115. At block 412, the streamingmonitor 105 extracts media information from the processed media. Forexample, the information processor 240 may extract media informationsuch as media identification information from the processed media. Atblock 414, the streaming monitor 105 generates a message. For example,the message generator 250 may generate a message based on at least thedevice identification information and/or the media information. At block416, the streaming monitor 105 transmits the message to the centralfacility. For example, the network communicator 270 may transmit themessage to the central facility 155. At block 418, the streaming monitor105 streams the media to a media presentation device. For example, themedia presenter 230 may stream the media to the media device 125 via theGroup Owner mode communicator 200. At block 420, the streaming monitor105 determines whether the media streaming ended. For example, the mediapresenter 230 may determine that the media device 115 is no longerstreaming media to the media presenter 230. If, at block 420, thestreaming monitor 105 determines that the media streaming did not end,control returns to block 410 to continue receiving the media from thestreaming client device, otherwise the example program 400 concludes.

FIG. 5 is a data flow diagram 500 representative of example messagessent by the example streaming monitor 105 and/or the media devices115,120,125 to form the Wi-Fi Direct network 185 of FIG. 1 . The dataflow diagram 500 begins when the example media device 115 broadcasts anexample Wi-Fi probe request 502. Alternatively, the example streamingmonitor 105 may broadcast the example Wi-Fi probe request 502. Theexample Wi-Fi probe request 502 may be broadcast utilizing a Wi-Fi radioof the streaming monitor 105 and/or the media device 115 to communicatewith additional devices within range of the Wi-Fi radio. When theexample streaming monitor 105 receives the example Wi-Fi probe request502 from the example media device 115, the streaming monitor 105transmits an example Wi-Fi probe response 504 to the media device 115.When the example media device 115 receives the example Wi-Fi proberesponse 504, the example media device 115 transmits an example GroupOwner negotiation request 506 to the example streaming monitor 105. Theexample Group Owner negotiation request 506 includes a Group Ownerintent attribute value. For example, the Group Owner negotiation request506 may include a Group Owner intent attribute value of 5 for the mediadevice 115. In response to the example streaming monitor 105 receivingthe example Group Owner negotiation request 506, the streaming monitor105 transmits an example Group Owner negotiation response 508 to theexample media device 115. The example Group Owner negotiation response508 includes a Group Owner intent attribute value for the examplestreaming monitor 105. For example, the Group Owner negotiation response508 may include a Group Owner intent attribute value of 10 for thestreaming monitor 105.

If the value for the Group Owner intent attribute for the examplestreaming monitor 105 is a greater value than the value for the GroupOwner intent attribute for the example media device 115, then thestreaming monitor 105 determines that the streaming monitor 105 is theGroup Owner for the example Wi-Fi Direct network 185. For example, thestreaming monitor 105 may determine that the streaming monitor 105 isthe Group Owner of the Wi-Fi Direct network 185 based on having thevalue of 10 for the Group Owner intent attribute, which is a greatervalue than the value of 5 for the Group Owner intent attribute for themedia device 115. Alternatively, if the value for the Group Owner intentattribute for the example streaming monitor 105 is a lesser value thanthe value for the Group Owner intent attribute for the example mediadevice 115, then the streaming monitor 105 determines that the mediadevice 115 is the Group Owner for the example Wi-Fi Direct network 185.If the values for the Group Owner intent attribute for the examplestreaming monitor 105 and the example media device 115 are the same,then the streaming monitor 105 determines whether the streaming monitor105 is the Group Owner of the example Wi-Fi Direct network 185 based ona tie-breaker. The tie-breaker is based on a comparison of a value for atie-breaker Group Owner intent attribute included in the example GroupOwner negotiation request 506 and a value for a tie-breaker Group Ownerintent attribute included in the example Group owner negotiationresponse 508. For example, when the values for the Group Owner intentattribute for the streaming monitor 105 and the media device 115 are thesame, the streaming monitor 105 may determine that the streaming monitor105 is the Group Owner for the Wi-Fi Direct network 185 when the valuefor the tie-breaker Group Owner intent attribute in the streamingmonitor 105 and/or included in the Group Owner negotiation response 508is a greater value than the value for the tie-breaker Group Owner intentattribute included in the media device 115 and/or included in the GroupOwner negotiation request 506. In some examples, the value for thetie-breaker Group Owner intent attribute for the media device 115 israndomly generated upon creation of the Group Owner negotiation request506 by the media device 115. In some instances, the value for thetie-breaker Group Owner intent attribute for the streaming monitor 105is randomly generated upon creation of the Group Owner negotiationresponse 508 by the streaming monitor 105.

When the example media device 115 receives the example Group Ownernegotiation response 508, the media device 115 transmits an exampleGroup Owner negotiation confirmation 510 to the example streamingmonitor 105. The example Group Owner negotiation confirmation 510 mayinclude a confirmation that the example media device 115 confirms tooperate as a client device of the example Wi-Fi Direct network 185. Inresponse to the example streaming monitor 105 receiving the exampleGroup Owner negotiation confirmation 510, the streaming monitor 105 andthe example media device 115 exchange one or more example Wi-Fi Directnetwork formation 512 messages. For example, the streaming monitor 105may exchange one or more heartbeat data packets with the media device115 to form the Wi-Fi Direct network 185 with the media device 115.

In the illustrated example of FIG. 5 , when the streaming monitor 105determines that the streaming monitor 105 is the Group Owner of theWi-Fi Direct network 185, the streaming monitor 105 broadcasts beacon514 within range of the Wi-Fi Direct network 185. The example streamingmonitor 105 may broadcast the example beacon 514 to determine whetherthere are additional client devices within the range of the exampleWi-Fi Direct network 185. In the illustrated example, the media device120 receives the beacon 514. In response to receiving the example beacon514, the example media device 120 sends an example beacon response 516to the example streaming monitor 105. When the example streaming monitor105 receives the example beacon response 516, the streaming monitor 105and the example media device 120 exchange one or more add media deviceto Wi-Fi Direct network 518 messages. For example, the streaming monitor105 may exchange one or more heartbeat data packets with the mediadevice 120 to add the media device 120 to the Wi-Fi Direct network 185.

In response to adding the example media device 120 to the example Wi-FiDirect network 185, the example streaming monitor 105 broadcasts anexample additional beacon 520 within the range of the Wi-Fi Directnetwork 185. The example streaming monitor 105 may broadcast theadditional beacon 520 to determine whether there are additional clientdevices within the range of the example Wi-Fi Direct network 185.Subsequent client devices such as the example media device 125 may beadded to the example Wi-Fi Direct network 185 in a similar manner asdescribed above, which may include an example additional beacon response522 and an add additional media device to Wi-Fi Direct network 524message.

FIG. 6 is a flowchart representative of example machine-readableinstructions which may be executed by the processor 812 of FIG. 8 toimplement the streaming monitor 105 of FIGS. 1 and/or 2 to operate as aclient device of a Wi-Fi Direct network. The example program 600 of FIG.6 begins at block 602 when the streaming monitor 105 joins a Wi-FiDirect network as a client device. For example, the P2P administrator220 may cause the streaming monitor 105 to join the Wi-Fi Direct network190 as a client device, where the media device 130 is the Group Owner ofthe Wi-Fi Direct network 190. At block 604, the streaming monitor 105obtains client device information. For example, the client device modecommunicator may obtain media device information from the Group Owner ofthe Wi-Fi Direct network 190, where the Group Owner is the media device130. The media device information may include media device informationfor the media devices 130,135,140. The information processor 240 mayextract media device information from the client device information suchas device identification information, device manufacturer information,etc. of the media devices 130,135,140.

At block 606, the streaming monitor 105 obtains Wi-Fi Direct networkinformation. For example, the client device mode communicator 210 mayobtain Wi-Fi Direct network information from the Group Owner of theWi-Fi Direct network 190, where the Group Owner is the media device 130.The information processor 240 may extract media information from theWi-Fi Direct network information such as a bandwidth or a data rate ofone or more streaming activities (e.g., a streaming data rate betweenthe media device 130 and the media device 140).

At block 608, the streaming monitor generates a message. For example,the message generator 250 may generate a message that includes theextracted media device information, the media information, etc. At block610, the streaming monitor 105 transmits the message to a centralfacility. For example, the network communicator 270 may transmit themessage to the central facility 155. At block 612, the streaming monitor105 determines whether the Wi-Fi Direct network is operational. Forexample, the P2P administrator 220 may determine whether the Wi-FiDirect network 190 is functional and/or operational. If, at block 612,the streaming monitor 105 determines that the Wi-Fi Direct network isoperational, control returns to block 604 to obtain additional Wi-FiDirect network information, otherwise the example program 600 concludes.

A flowchart representative of example machine readable instructions forimplementing the example central facility 155 of FIGS. 1 and/or 3 areshown in FIG. 7 . In this example, the machine-readable instructionscomprise a program for execution by a processor such as the processor912 shown in the example processor platform 900 discussed below inconnection with FIG. 9 . The program may be embodied in software storedon a tangible computer readable storage medium such as a CD-ROM, afloppy disk, a hard drive, a digital versatile disk (DVD), a Blu-raydisk, or a memory associated with the processor 912, but the entireprogram and/or parts thereof could alternatively be executed by a deviceother than the processor 912 and/or embodied in firmware or dedicatedhardware. Further, although the example program is described withreference to the flowchart illustrated in FIG. 7 , many other methods ofimplementing the example central facility 155 may alternatively be used.For example, the order of execution of the blocks may be changed, and/orsome of the blocks described may be changed, eliminated, or combined.

As mentioned above, the example process of FIG. 7 may be implementedusing coded instructions (e.g., computer and/or machine readableinstructions) stored on a tangible computer readable storage medium suchas a hard disk drive, a flash memory, a read-only memory (ROM), acompact disk (CD), a digital versatile disk (DVD), a cache, arandom-access memory (RAM) and/or any other storage device or storagedisk in which information is stored for any duration (e.g., for extendedtime periods, permanently, for brief instances, for temporarilybuffering, and/or for caching of the information). As used herein, theterm tangible computer readable storage medium is expressly defined toinclude any type of computer readable storage device and/or storage diskand to exclude propagating signals and to exclude transmission media. Asused herein, “tangible computer readable storage medium” and “tangiblemachine readable storage medium” are used interchangeably. Additionallyor alternatively, the example process of FIG. 7 may be implemented usingcoded instructions (e.g., computer and/or machine readable instructions)stored on a non-transitory computer and/or machine readable medium suchas a hard disk drive, a flash memory, a read-only memory, a compactdisk, a digital versatile disk, a cache, a random-access memory and/orany other storage device or storage disk in which information is storedfor any duration (e.g., for extended time periods, permanently, forbrief instances, for temporarily buffering, and/or for caching of theinformation). As used herein, the term non-transitory computer readablemedium is expressly defined to include any type of computer readablestorage device and/or storage disk and to exclude propagating signalsand to exclude transmission media. As used herein, when the phrase “atleast” is used as the transition term in a preamble of a claim, it isopen-ended in the same manner as the term “comprising” is open ended.Comprising and all other variants of “comprise” are expressly defined tobe open-ended terms. Including and all other variants of “include” arealso defined to be open-ended terms. In contrast, the term consistingand/or other forms of consist are defined to be close-ended terms.

FIG. 7 is a flowchart representative of example machine-readableinstructions which may be executed by the processor 912 of FIG. 9 toimplement the central facility 155 of FIGS. 1 and/or 3 to credit media.The example program 700 of FIG. 7 begins at block 702 when the centralfacility 155 obtains a network communication. For example, the networkinterface 160 may obtain a network communication via the network 150. Atblock 704, the central facility 155 extracts message information. Forexample, the message extractor 310 may extract a message from thenetwork communication. At block 706, the central facility 155 determineswhether the message includes media device information. For example, themedia device identifier 320 may determine whether the message includesmedia device information. If, at block 706, the central facility 155determines that the message does not include media device information,control proceeds to block 710 to determine whether the message includesmedia identification information. If, at block 706, the central facility155 determines that the message does include media device information,then, at block 708, the central facility 155 stores the media deviceinformation. For example, the media device identifier 320 may store themedia device information in the media monitoring database 350.

At block 710, the central facility 155 determines whether the messageincludes media identification information. For example, the mediaidentifier 330 may determine whether the message includes mediaidentification information. If, at block 710, the central facility 155determines that the message does not include media identificationinformation then the example program 700 concludes. If, at block 710,the central facility 155 determines that the message includes mediaidentification information, then, at block 712, the central facility 155identifies the media. For example, the media identifier 330 may identifythe media. The media identifier 330 may identify the media by inspectingmedia metadata, a uniform resource locator (URL) associated with themedia, etc.

At block 714, the central facility 155 credits the media to one or moremedia devices. For example, the media creditor 340 may credit the mediato the media devices 115,120,125,130,135,140 of FIG. 1 . For example,the media creditor 340 may credit the media as having been streamed bythe media device 115 and/or presented by the media device 125. Inanother example, the media creditor 340 may credit the media tocorresponding media device information of the media devices115,120,125,130,135,140. For example, the media creditor 340 may creditthe media as having been streamed by an Apple® iPhone® to a Samsung®smart television. At block 716, the central facility 155 generates areport. For example, the reporter 360 may generate a report based on thecrediting of the media to the media device information, the mediaidentification information, etc.

FIG. 8 is a block diagram of an example processor platform 800 capableof executing the instructions and/or the data diagram of FIGS. 4-6 toimplement the example streaming monitor 105 of FIGS. 1 and/or 2 . Theprocessor platform 800 can be, for example, a server, a personalcomputer, a mobile device (e.g., a cell phone, a smart phone, a tabletsuch as an iPad™), a personal digital assistant (PDA), an Internetappliance, a DVD player, a CD player, a digital video recorder, aBlu-ray player, a gaming console, a personal video recorder, a set topbox, or any other type of computing device.

The processor platform 800 of the illustrated example includes aprocessor 812. The processor 812 of the illustrated example is hardware.For example, the processor 812 can be implemented by one or moreintegrated circuits, logic circuits, microprocessors or controllers fromany desired family or manufacturer.

The processor 812 of the illustrated example includes a local memory 813(e.g., a cache). The processor 812 of the illustrated example executesthe instructions to implement the example streaming monitor 105 of FIGS.1 and/or 2 . The processor 812 of the illustrated example is incommunication with a main memory including a volatile memory 814 and anon-volatile memory 816 via a bus 818. The volatile memory 814 may beimplemented by Synchronous Dynamic Random Access Memory (SDRAM), DynamicRandom Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM)and/or any other type of random access memory device. The non-volatilememory 816 may be implemented by flash memory and/or any other desiredtype of memory device. Access to the main memory 814,816 is controlledby a memory controller.

The processor platform 800 of the illustrated example also includes aninterface circuit 820. The interface circuit 820 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices 822 are connectedto the interface circuit 820. The input device(s) 822 permit(s) a userto enter data and commands into the processor 812. The input device(s)can be implemented by, for example, an audio sensor, a microphone, acamera (still or video), a keyboard, a button, a mouse, a touchscreen, atrack-pad, a trackball, isopoint and/or a voice recognition system.

One or more output devices 824 are also connected to the interfacecircuit 820 of the illustrated example. The output devices 824 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay, a cathode ray tube display (CRT), a touchscreen, a tactileoutput device, a printer and/or speakers). The interface circuit 820 ofthe illustrated example, thus, typically includes a graphics drivercard, a graphics driver chip or a graphics driver processor.

The interface circuit 820 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem and/or network interface card to facilitate exchange of data withexternal machines (e.g., computing devices of any kind) via a network826 (e.g., an Ethernet connection, a digital subscriber line (DSL), atelephone line, coaxial cable, a cellular telephone system, etc.).

The processor platform 800 of the illustrated example also includes oneor more mass storage devices 828 for storing software and/or data.Examples of such mass storage devices 828 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and digital versatile disk (DVD) drives. The example massstorage 828 implements the example data store 260.

The coded instructions 832 of FIGS. 4-6 may be stored in the massstorage device 828, in the volatile memory 814, in the non-volatilememory 816, and/or on a removable tangible computer readable storagemedium such as a CD or DVD.

FIG. 9 is a block diagram of an example processor platform 900 capableof executing the instructions of FIG. 7 to implement the example centralfacility 155 of FIGS. 1 and/or 3 . The processor platform 900 can be,for example, a server, a personal computer, a mobile device (e.g., acell phone, a smart phone, a tablet such as an iPad′), a personaldigital assistant (PDA), an Internet appliance, a DVD player, a CDplayer, a digital video recorder, a Blu-ray player, a gaming console, apersonal video recorder, a set top box, or any other type of computingdevice.

The processor platform 900 of the illustrated example includes aprocessor 912. The processor 912 of the illustrated example is hardware.For example, the processor 912 can be implemented by one or moreintegrated circuits, logic circuits, microprocessors or controllers fromany desired family or manufacturer.

The processor 912 of the illustrated example includes a local memory 913(e.g., a cache). The processor 912 of the illustrated example executesthe instructions to implement the example central facility 155 of FIGS.1 and/or 3 . The processor 912 of the illustrated example is incommunication with a main memory including a volatile memory 914 and anon-volatile memory 916 via a bus 918. The volatile memory 914 may beimplemented by Synchronous Dynamic Random Access Memory (SDRAM), DynamicRandom Access Memory (DRAM), RAMBUS Dynamic Random Access Memory (RDRAM)and/or any other type of random access memory device. The non-volatilememory 816 may be implemented by flash memory and/or any other desiredtype of memory device. Access to the main memory 914,916 is controlledby a memory controller.

The processor platform 900 of the illustrated example also includes aninterface circuit 920. The interface circuit 920 may be implemented byany type of interface standard, such as an Ethernet interface, auniversal serial bus (USB), and/or a PCI express interface.

In the illustrated example, one or more input devices 922 are connectedto the interface circuit 920. The input device(s) 922 permit(s) a userto enter data and commands into the processor 912. The input device(s)can be implemented by, for example, an audio sensor, a microphone, acamera (still or video), a keyboard, a button, a mouse, a touchscreen, atrack-pad, a trackball, isopoint and/or a voice recognition system.

One or more output devices 924 are also connected to the interfacecircuit 920 of the illustrated example. The output devices 924 can beimplemented, for example, by display devices (e.g., a light emittingdiode (LED), an organic light emitting diode (OLED), a liquid crystaldisplay, a cathode ray tube display (CRT), a touchscreen, a tactileoutput device, a printer and/or speakers). The interface circuit 920 ofthe illustrated example, thus, typically includes a graphics drivercard, a graphics driver chip or a graphics driver processor.

The interface circuit 920 of the illustrated example also includes acommunication device such as a transmitter, a receiver, a transceiver, amodem and/or network interface card to facilitate exchange of data withexternal machines (e.g., computing devices of any kind) via a network926 (e.g., an Ethernet connection, a digital subscriber line (DSL), atelephone line, coaxial cable, a cellular telephone system, etc.).

The processor platform 900 of the illustrated example also includes oneor more mass storage devices 928 for storing software and/or data.Examples of such mass storage devices 928 include floppy disk drives,hard drive disks, compact disk drives, Blu-ray disk drives, RAIDsystems, and digital versatile disk (DVD) drives. The example massstorage 928 implements the example media monitoring database 350.

The coded instructions 932 of FIG. 7 may be stored in the mass storagedevice 928, in the volatile memory 914, in the non-volatile memory 916,and/or on a removable tangible computer readable storage medium such asa CD or DVD.

From the foregoing, it will appreciate that the above disclosed methods,apparatus, and articles of manufacture enable monitoring of media (e.g.,streaming media) of a Wi-Fi Direct network.

As disclosed herein, example methods, apparatus, and articles ofmanufacture may be used to credit presentation of media to a mediadevice based on obtained media device information and/or mediainformation. Crediting the media device using the media deviceinformation and/or the media information enables more accurateidentification of the presented media and more accurate identificationof the media devices used to stream the media or, present the media.Moreover, such crediting improves processing capabilities for existingcrediting systems. For example, whereas a media device may not becredited for the presented media, in examples disclosed herein, themedia device may be credited for the presented media using the improvedcrediting capabilities. The improved crediting capabilities includecrediting the media device with streaming activities beyond an initialaccessing (e.g., downloading) of the media. Accurately crediting themedia device using the enhanced crediting capabilities may result infewer hardware components to implement the crediting system, thusresulting in reduced system complexity.

Although certain example methods, apparatus and articles of manufacturehave been disclosed herein, the scope of coverage of this patent is notlimited thereto. On the contrary, this patent covers all methods,apparatus and articles of manufacture fairly falling within the scope ofthe claims of this patent.

What is claimed is:
 1. An apparatus to monitor media, the apparatuscomprising: at least one memory; machine-readable instructions; and atleast one processor to execute the machine-readable instructions to atleast: establish a direct media network as a Group Owner afterperformance of a negotiation process with a streaming client device; adda client device to the direct media network based on a beacon responsefrom the streaming client device; after metadata is extracted from firstmedia at the apparatus, cause transmission of the first media to a mediapresentation device via the direct media network, the metadatarepresentative of an identification of the media; and cause transmissionof a message including the identification of the media to a server via anetwork to credit the media as having been accessed based on theidentification.
 2. The apparatus of claim 1, wherein the at least oneprocessor is to: receive a wireless probe request from the streamingclient device; cause transmission of a wireless probe response to thestreaming client device; and perform the negotiation process based onthe wireless probe response.
 3. The apparatus of claim 1, wherein the atleast one processor is to: receive a Group Owner negotiation requestincluding a first Group Owner intent attribute value from the streamingclient device; cause transmission of a Group Owner negotiation responseincluding a second Group Owner intent attribute value to the streamingclient device; and after a determination that the second Group ownerintent attribute value is greater than the first Group Owner intentattribute value, identify the at least one processor as the Group Owner.4. The apparatus of claim 1, wherein the at least one processor is to:receive a Group Owner negotiation request including a first Group Ownerintent attribute value from the streaming client device; causetransmission of a Group Owner negotiation response including a secondGroup Owner intent attribute value to the streaming client device; andafter a determination that the second Group owner intent attribute valueis the same as the first Group Owner intent attribute value, identifythe at least one processor as the Group Owner based on a firsttie-breaker Group Owner intent attribute value of the streaming clientdevice being less than a second tie-breaker Group Owner intent attributevalue of the at least one processor.
 5. The apparatus of claim 4,wherein the first tie-breaker Group Owner intent attribute value isincluded in the Group Owner negotiation request and the secondtie-breaker Group Owner intent attribute value is included in in theGroup Owner negotiation response.
 6. The apparatus of claim 4, whereinthe client device is a first client device, and the at least oneprocessor is to: receive a Group Owner negotiation confirmation from thestreaming client device; determine that the streaming client deviceconfirms to operate as a second client device of the direct medianetwork based on the Group Owner negotiation confirmation; and causetransmission of a direct media network formation message to thestreaming client device.
 7. The apparatus of claim 6, wherein the atleast one processor is to generate the direct media network formationmessage to include a heartbeat data packet.
 8. At least onenon-transitory computer readable storage medium comprising instructionsthat, when executed, cause at least one processor to at least: establisha direct media network as a Group Owner after performance of anegotiation process with a streaming client device; add a client deviceto the direct media network based on a beacon response from thestreaming client device; after metadata is extracted from first media atthe at least one processor, cause transmission of the first media to amedia presentation device via the direct media network, the metadatarepresentative of an identification of the media; and cause transmissionof a message including the identification of the media to a server via anetwork to credit the media as having been accessed based on theidentification.
 9. The at least one non-transitory computer readablestorage medium of claim 8, wherein the instructions are to cause the atleast one processor to: obtain a wireless probe request from thestreaming client device; cause transmission of a wireless probe responseto the streaming client device; and perform the negotiation processbased on the wireless probe response.
 10. The at least onenon-transitory computer readable storage medium of claim 8, wherein theinstructions are to cause the at least one processor to: obtain a GroupOwner negotiation request including a first Group Owner intent attributevalue from the streaming client device; cause transmission of a GroupOwner negotiation response including a second Group Owner intentattribute value to the streaming client device; and after adetermination that the second Group owner intent attribute value isgreater than the first Group Owner intent attribute value, identify theat least one processor as the Group Owner.
 11. The at least onenon-transitory computer readable storage medium of claim 8, wherein theinstructions are to cause the at least one processor to: obtain a GroupOwner negotiation request including a first Group Owner intent attributevalue from the streaming client device; cause transmission of a GroupOwner negotiation response including a second Group Owner intentattribute value to the streaming client device; and after adetermination that the second Group owner intent attribute value is thesame as the first Group Owner intent attribute value, identify the atleast one processor as the Group Owner based on a first tie-breakerGroup Owner intent attribute value of the streaming client device beingless than a second tie-breaker Group Owner intent attribute value of theat least one processor.
 12. The at least one non-transitory computerreadable storage medium of claim 11, wherein the instructions are tocause the at least one processor to determine that the first tie-breakerGroup Owner intent attribute value is included in the Group Ownernegotiation request and the second tie-breaker Group Owner intentattribute value is included in in the Group Owner negotiation response.13. The at least one non-transitory computer readable storage medium ofclaim 11, wherein the client device is a first client device, and theinstructions are to cause the at least one processor to: obtain a GroupOwner negotiation confirmation from the streaming client device;determine that the streaming client device confirms to operate as asecond client device of the direct media network based on the GroupOwner negotiation confirmation; and cause transmission of a direct medianetwork formation message to the streaming client device.
 14. The atleast one non-transitory computer readable storage medium of claim 13,wherein the instructions are to cause the at least one processor togenerate the direct media network formation message to include aheartbeat data packet.
 15. A method to monitor media, the methodcomprising: establishing a direct media network to have a streamingmonitor device to operate as a Group Owner after performance of anegotiation process with a streaming client device; adding a clientdevice to the direct media network based on a beacon response from thestreaming client device; after metadata is extracted from first media atthe streaming monitor device, transmitting the first media to a mediapresentation device via the direct media network, the metadatarepresentative of an identification of the media; and transmitting amessage including the identification of the media to a server via anetwork to credit the media as having been accessed based on theidentification.
 16. The method of claim 15, further including: receivinga wireless probe request from the streaming client device; transmittingof a wireless probe response to the streaming client device; andperforming the negotiation process based on the wireless probe response.17. The method of claim 15, further including: receiving a Group Ownernegotiation request including a first Group Owner intent attribute valuefrom the streaming client device; transmitting of a Group Ownernegotiation response including a second Group Owner intent attributevalue to the streaming client device; and after a determination that thesecond Group owner intent attribute value is greater than the firstGroup Owner intent attribute value, identifying the streaming monitordevice as the Group Owner.
 18. The method of claim 15, furtherincluding: receiving a Group Owner negotiation request including a firstGroup Owner intent attribute value from the streaming client device;transmitting a Group Owner negotiation response including a second GroupOwner intent attribute value to the streaming client device; and after adetermination that the second Group owner intent attribute value is thesame as the first Group Owner intent attribute value, identifying thestreaming monitor device as the Group Owner based on a first tie-breakerGroup Owner intent attribute value of the streaming client device beingless than a second tie-breaker Group Owner intent attribute value of thestreaming monitor device.
 19. The method of claim 18, wherein the firsttie-breaker Group Owner intent attribute value is included in the GroupOwner negotiation request and the second tie-breaker Group Owner intentattribute value is included in in the Group Owner negotiation response.20. The method of claim 18, wherein the client device is a first clientdevice, and the method further including: receiving a Group Ownernegotiation confirmation from the streaming client device; determiningthat the streaming client device confirms to operate as a second clientdevice of the direct media network based on the Group Owner negotiationconfirmation; and transmitting a direct media network formation messageto the streaming client device.